package com.ruoyi.ipms_patent.mapper;

import com.ruoyi.ipms_patent.dto.IpmsCaseBaseInfo;
import com.ruoyi.ipms_patent.dto.IpmsCaseBaseInfoB;
import com.ruoyi.ipms_patent.dto.IpmsCaseBaseInfoC;
import com.ruoyi.ipms_patent.dto.IpmsCaseBaseInfoD;
import com.ruoyi.ipms_patent.entity.IpmsCase;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

/**
 * @author: isBao
 * Description:TODO:案件基础信息Mapper
 */
@Mapper
public interface IpmsCaseBaseInfoMapper {

    /* 基于用户角色查找其能获取的案件列表 */
    List<IpmsCaseBaseInfo> selectCaseBaseInfoByuserId(@Param("ipmsCaseBaseInfo")IpmsCaseBaseInfo ipmsCaseBaseInfo, @Param("caseStatus") Set<String> caseStatus);

    /* 案件编号单个查询 */
    IpmsCaseBaseInfo selectCaseByCaseNo(String caseNo);

    /* 案件编号单个查询之申请文件 */
    List<IpmsCaseBaseInfoB> selectCaseBCyCaseNo(String caseNo);

    List<IpmsCaseBaseInfoC> selectReviewerByCaseStatusId(String caseHistoryStatusId);

    List<IpmsCaseBaseInfoC> selectReviewerBByCaseStatusId(String caseHistoryStatusId);

    List<IpmsCaseBaseInfoD> selectOfficalByCaseNo(String caseNo);
}
